-
Notifications
You must be signed in to change notification settings - Fork 470
VERCEL: add to intergration test #3876
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
8330f14 to
c8d435c
Compare
|
cc @tlimoncelli Also, I have already begun running intergration tests under my own account's GitHub Action here: SukkaW#1 https://github.com/SukkaW/dnscontrol/actions/runs/19867709318/job/56938063153?pr=1
Is it normal to be stuck at this step? Doesn't feel like the test has begun yet, it appears to be stuck at |
|
@tlimoncelli OK, I figured out what's actually going on. Turns out that even w/o the pager test, the rest of the intergration test still creates more than 100 records and just hits Vercel's 100 creations per hour rate limit.
|
|
Thanks for all the research. I really appreciate you taking the time to investigate this. I agree with your conclusion. This integration test just does too much. There are a couple ways forward: fix it or ignore it. The "fix it" route would mean detecting the error, pausing, and trying again. Often APIs include headers that tell you how long to wait, which is super. Otherwise, retrying every minute is generally fine. (add The "ignore it" route has a few benefits. One is that ... less work. Of course, the downside is that if something breaks, we might not know about it right away. That's probably ok. You'd be surprised at how rarely that has happened for other providers. Generally companies are good about not changing APIs. I'm considering adding a feature where tests mark themselves as "long" or "short" and there's a good chance that running only the short tests will be fewer than 100 changes (50 adds, 50 deletes). However that's months away (maybe a year) in the roadmap. My point is that "ignore it" has the benefit that if we wait long enough the problem may go away when the "short" tests feature arrives. Another route is to ask Vercel for an exception. Explain the situation and ask if they have a solution. Maybe they have a test environment with no limits, or can grant this test account a higher limit if we promise to only use it for these occasional tests. Vendors have raised limits for us in the past. I'm fine with all these options. Let me know your preference. |
Actually, I have already implemented that, and the provider will actually wait for the rate limit quota resets. It is just that we need to wait for an entire hour before continuing, while the default test timeout is 30 minutes.
The pager test has already been skipped, but other tests accumulated more than 100 records that resulted in exhausting rate limits.
Lemme get in contact with Vercel to see if it helps. |
c8d435c to
12d5a53
Compare
|
@tlimoncelli Just an update. By running intergration tests locally (and luckily spotted a few bugs #3887), I confirm that we can at least finish test group 1 to 50 within the 100 limit. If we skip all |
556bd7b to
2ae4594
Compare
Sounds good! P.S. The IGNORE() tests tests DNSControl more-so than the provider. If they complete successfully once, they'll probably pass forever. |
2ae4594 to
f500bfb
Compare
|
Update: Vercel rejects my request to increase the rate limit to the test account. In fact, no human has ever read my email. It was an automated response with "Hobby Plan does not have any support". |


Follows #3542
This is a draft PR to see if the intergration test succeeds from my forked repo. I will donate the credentials after that.
Please tag this PR w/
provider-VERCEL.